#include <cstring>
#include <string>
#include <iostream>
#include <cstdio>
#include <complex>
#include <vector>
#include <algorithm>
#include <iomanip>

using namespace std;

typedef complex<double> pt;
typedef complex<double> vt;
#define PI 3.141592653589793

double x[3],y[3];
pt a,b,c;


pt getCentre(pt a, pt b, pt c){
  pt ba = 0.5*(a+b); pt cb = 0.5*(b+c); 
  vt vba = (b-a)/abs(b-a); vt vcb = (c-b)/abs(c-b);
  vt pba = vba*exp(pt(0,0.5*PI)); vt pcb = vcb*exp(pt(0,0.5*PI));
  double t = (pba.imag()*(ba.real()-cb.real())-pba.real()*(ba.imag()-cb.imag())) / ( pcb.real()*pba.imag()-pcb.imag()*pba.real());
  return cb+t*pcb;  
}

int main(){
  while(cin>>x[0]>>y[0]>>x[1]>>y[1]>>x[2]>>y[2]){
     pt a = pt(x[0],y[0]); pt b = pt(x[1],y[1]); pt c = pt(x[2],y[2]);
     printf("%.2lf\n",2*PI*abs(a-getCentre(a,b,c)));   
  }
  return 0;
}
